home *** CD-ROM | disk | FTP | other *** search
/ The 640 MEG Shareware Studio 2 / The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO / basic / pbclon20.zip / PBCLONE.NEW < prev    next >
Text File  |  1992-10-19  |  17KB  |  400 lines

  1. PBClone 2.0, 10/19/92:
  2.  
  3.    From AdvBas to PBClone, I've kept a registration price of
  4.    $25 for the last seven years.  What was a good deal for a
  5.    library of some 100 routines turned into a ludicrously low
  6.    price for the 525+ routines in PBClone, however.  In order
  7.    to scale the price back to a mere outrageous bargain, I am
  8.    raising the registration fee to $35 as of January 1, 1993.
  9.  
  10.    Special thanks to Bruce Guthrie for his many suggestions and
  11.    attentive bug reporting, which have been of great benefit to
  12.    PBClone on a continuing basis.  Kudos!  (AND a free update!)
  13.  
  14.    My BasWiz and PBClone libraries had a name conflict: both
  15.    contained FOpen and FClose routines.  To resolve this, I've
  16.    renamed the PBClone versions to FOpen1 and FClose1.
  17.  
  18.    Instructions are now included for creating a PBClone library
  19.    for use with the Visual Basic for DOS compiler.
  20.  
  21.    Among the new additions are file routines for numeric I/O,
  22.    get/set individual palette values, convert a numeric ASCII
  23.    code to uppercase, read 4DOS-style file descriptions, get
  24.    mouse info, center a string, get CPU speed, and others.
  25.  
  26.    A number of routines have been converted from BASIC to ASM.
  27.    This has caused changes in the DECLAREs for the following
  28.    routines:
  29.       GetScreen, InitPtr, PutScreen
  30.  
  31.    A mistaken assumption about far string handling caused
  32.    problems with many far string routines.  These have been
  33.    fixed.  Note that since far string support was added to the
  34.    shareware version of PBClone as of v1.9, these routines have
  35.    not been tested in use as much as the near string routines,
  36.    and I expect more bugs will probably settle out within the
  37.    next few releases.  If you run into any problems, tell me!
  38.  
  39.    The ArcView demo program now works smoothly with archives
  40.    containing filenames that include path specifications.
  41.  
  42.    Fixes and improvements:
  43.       DriveSpace& and DrvSpaceL recognize invalid drives.
  44.       IdentifyFile recognizes many more file types.
  45.       ObjScan now screens out VB-DOS internal symbols.
  46.       SubExist and SubExist2% now screen out wildcards.
  47.       Upcase1 now uses National Language Support if it can.
  48.  
  49.    New additions:
  50.       BRead, BWrite, CenterSt, CPUSpeed, FDescRead, FReadLn,
  51.       GetMouseVer, GetTick, GetVGAColor, IRead, IWrite, LIRead,
  52.       LIWrite, LRead, LWrite, SetVGAColor, UpcaseI, UpcaseI1
  53.  
  54.  
  55.  
  56. PBClone 1.9, 07/27/92:
  57.  
  58.    The source code for the PBClone routines which are written
  59.    in BASIC is now included in the shareware version.  A set of
  60.    near and far string libraries for the assembly language part
  61.    of PBClone is also included.  This allows you to create a
  62.    PBClone library for QuickBasic 4.x and PDS 6.0-7.1, rather
  63.    than just for QuickBasic 4.5 as in previous versions.
  64.  
  65.    Fixes and improvements:
  66.       Elapsed & ElapsedTime$ allow times that cross midnight.
  67.       FileCRC is much smaller and faster.
  68.       FindFirstA can now scan self-extracting LHARC archives.
  69.       PCDat$ works properly with far strings.
  70.       Processor & Processor2% can now identify 80486 CPUs.
  71.       StrUsqu2 and StrUsqu3 now support far strings.
  72.       SubExist & SubExist2% now check drives as well as dirs.
  73.       WeekDay1 now works.
  74.  
  75.    Many routines have been converted from BASIC to assembly
  76.    language.  In the case of the following routines, this
  77.    caused the DECLARE to change as well:
  78.       CheckDate, DateA2R, StripBlanks, StripRange, StripSpaces
  79.  
  80.    As Microsoft adds time and date functions to BASIC, the
  81.    names of certain PBClone routines become a problem.  I've
  82.    renamed Month to Month0 and WeekDay to WeekDay0 in order to
  83.    resolve the conflicts.  In addition, the variables Hour%,
  84.    Minute%, Second%, Month%, Day%, and Year% have been replaced
  85.    by HourNr%, MinuteNr%, SecondNr%, MonthNr%, DayNr%, and
  86.    YearNr%.  Sorry for any inconvenience.  Such is progress.
  87.  
  88.    Added LIB_BI.DOC, a tutorial which explains how to use
  89.    libraries and include files.  This is included with PBClone
  90.    by the kind permission of Daniel M. Smith, Jr., the author.
  91.  
  92.    New additions:
  93.       AscM, DupeVar, HiByte, HiLite, HiWord, LoByte, LoWord,
  94.       StrSqu, StrSqu3, StrUnsq, StrUnSqu3
  95.  
  96.  
  97.  
  98. PBClone 1.8, 05/08/92:
  99.  
  100.    A bug was fixed in SetComm, which was setting the baud rate
  101.    incorrectly. More importantly, however, I ran into a serious
  102.    Microsoft bug which I'd thought had long since been fixed.
  103.    It appears that QuickBASIC 4.0-4.5 and BASCOM/PDS 6.0-7.1
  104.    destroy vital comm port information in the BIOS data area,
  105.    making it impossible for any of the PBClone comm routines to
  106.    function. I have enclosed patch information for QB 4.5 in
  107.    QBPATCH.TXT.  If you have a different compiler or do not
  108.    wish to modify your BASIC libraries, use the following
  109.    work-around:
  110.  
  111.       SaveComm$ = SPACE$(8)
  112.       DGetSt &H40, 0, 0&, SaveComm$        ' save comm info
  113.       ' OPEN the comm port as desired
  114.       DPutSt &H40, 0, 0&, SaveComm$        ' restore comm info
  115.       ' now you can use PBClone comm routines
  116.  
  117.    In the new QBPATCH.TXT file, there is information about how
  118.    to permanently eradicate that comm-killer bug, among other
  119.    things.  It's been many years since Microsoft upgraded QB.
  120.    Maybe it's time for us to start fixing the bugs ourselves.
  121.  
  122.    Speaking of bugs... a lot of 'em have settled out in the
  123.    last few months.  Bugs were fixed in the MaxL and MinL
  124.    functions, which would return the wrong results if both
  125.    parameters were negative. A bug was fixed in FCreate, which
  126.    would lock the computer. A bug was fixed in the near-string
  127.    version of Xlate. A bug was fixed in the far-string version
  128.    of GetExecPath. Bugs were fixed in SubExist and SubExist2,
  129.    which changed the path.  They were also made insensitive to
  130.    a DR-DOS flaky. The PSortSt and SortSt routines were
  131.    incorrectly documented. The Date2Int and Int2Date routines
  132.    had a problem and return different values now.
  133.  
  134.    The various sort routines would not compile under BC7/PDS
  135.    due to use of a STACK array (STACK is a PDS reserved word).
  136.  
  137.    The TimeN2S routine will no longer translate zeros to the
  138.    current time.  After all, although "00:00:00" is an unusual
  139.    time, it is a valid one.  Getting the current time can be
  140.    more easily done with the TIME$ function anyway.
  141.  
  142.    The CatchError/GetError routines don't work any better than
  143.    they used to, but you can replace them with the new
  144.    GetError2% function, which appears to be more effective.
  145.  
  146.    The VARCDEMO program has been renamed to ARCVIEW.  As well
  147.    as the filename-only listing, it now allows a detailed view
  148.    of an archive-- try the /V option.  A new demo has been
  149.    added, DIRVIEW, to show the use of the LoadDirAll routine.
  150.  
  151.    If you use the excellent 4DOS command shell, try the new
  152.    ADD4DOS batch file-- it adds descriptions of all PBClone
  153.    files which will show up when you type DIR.  No more
  154.    guessing about filenames!
  155.  
  156.    Microsoft's simplified segment directives made it much
  157.    easier to create assembly language routines.  Unfortunately,
  158.    when you have a library as big as PBClone, they're
  159.    counterproductive.  I've converted the PBClone sources to
  160.    use the old-style full segment directives.  The added
  161.    flexibility this gave me provided a number of benefits:
  162.  
  163.      - the .QLB library is smaller, providing more QB/QBX
  164.        environment space
  165.      - data areas have been consolidated, providing more data
  166.        space
  167.      - common code has been consolidated, reducing memory
  168.        requirements (and often improving the speed, since near
  169.        calls can be used)
  170.      - improved granularity
  171.  
  172.    Many of the routines that were in BASIC have been converted
  173.    to assembly language.  Although few of these routines were
  174.    particularly time-critical, the translation allowed for
  175.    fewer segments and improved memory usage.
  176.  
  177.    Doc files have been converted to 64 col x 59 row pages to
  178.    allow printing on a greater variety of printers.  You may
  179.    want to think twice before printing out the PBCLONE?.MAN
  180.    files, though, as they total over 10,000 lines.
  181.  
  182.    New additions:
  183.       CeilD, CeilS, ExplainFAttr, FarPeekI, FarPeekL, FarPokeI,
  184.       FarPokeL, FileCount, FloorD, FloorS, GetError2, GetFSize,
  185.       Int2DateSt, Int2TimeSt, IsAlNum, IsAlpha, IsASCII,
  186.       IsCntrl, IsDigit, IsLower, IsPrint, IsPunct, IsSpace,
  187.       IsUpper, IsXDigit, LoadDir, LoadDirAll, LogicalDrives,
  188.       MPrint, MWindow, Num2Phone, Odd, OddL, Phone2Num,
  189.       PrinterInit
  190.  
  191.  
  192.  
  193. PBClone 1.7, 01/08/92:
  194.  
  195.    Argh, drat.  In the rush to release a fix for PBClone 1.5, I
  196.    forgot that I'd pulled the ARCHIVE.OBJ routines out to add
  197.    new capabilities.  Result? A bug fix that only had different
  198.    bugs!  My apologies.  I've added a group of beta testers to
  199.    prevent this sort of thing in the future.
  200.  
  201.    Bug fixes affect: CheckDisk, CheckDsk, CRC, GetTimeFx,
  202.    RenSub, SInput.
  203.  
  204.    I'm breaking PBClone away from its obsession with following
  205.    ProBas.  I am taking this opportunity to remove dummy
  206.    parameters from routines which only included them for ProBas
  207.    compatibility, and to delete routines which are obsolete or
  208.    have no function except in ProBas.  My apologies for any
  209.    inconvenience these changes may cause you.  This is a
  210.    one-time thing.
  211.  
  212.       Altered: CtrlKey, DCal, FindPatch, GrafRest, GrafSave,
  213.       HCls, HLine, HMode, HPrint, HSetPixel, HTestPixel
  214.  
  215.       Deleted: DrvSpace, GetMoveBack, GetSizeF, HInit, HPage,
  216.       SetRows
  217.  
  218.    The FindFirstA set of routines now supports ARJ and ZOO
  219.    archives.
  220.  
  221.    Some of the territory covered by the new routines includes
  222.    Windows and 4DOS detection, sorting and binary searches,
  223.    control over the Break key, graphics mouse cursors, printer
  224.    checking and formatted dollar input.
  225.  
  226.    New additions:
  227.       AllExtMem, AndSt, BinSeekD, BinSeekI, BinSeekL, BinSeekS,
  228.       BinSeekSt, BreakCheck, BreakOff, BreakOffDone, CRC1,
  229.       DInput, FloppyType, Get4DOSv, GetPrtAddr, InitPtr,
  230.       MouseCursor, OrSt, PrinterReady, PSortD, PSortI, PSortL,
  231.       PSortS, PSortSt, ReverseD, ReverseI, ReverseL, ReverseS,
  232.       ReverseSt, RolSt, RorSt, SetPrtAddr, ShlSt, ShrSt, SortD,
  233.       SortI, SortL, SortS, SortSt, WinCheck, XorSt, XQPrintOver
  234.  
  235.  
  236.  
  237. PBClone 1.6, 10/09/91:
  238.  
  239.    There was an error in the PBCLONE.INF entries for GetXMSm
  240.    and GetXMSv. This has been corrected.  The CheckDate routine
  241.    would bomb out if it was given an illegal month.  This has
  242.    likewise been fixed.
  243.  
  244.    The reference manual was getting too large for my favorite
  245.    editor, so I split it in half.  PBCLONE1.MAN covers A-F and
  246.    PBCLONE2.MAN covers G-Z.
  247.  
  248.  
  249.  
  250. PBClone 1.5, 09/25/91:
  251.  
  252.    Support for far strings has been added to PBClone.  This
  253.    means you can use PBClone in the QBX environment and with
  254.    the BC7 "PDS" /Fs option.  Only the registered version
  255.    provides this feature, since you must recompile the BASIC
  256.    sources with whichever PDS version you have.
  257.  
  258.    A bug in the DEMO.BAS file having to do with expanded memory
  259.    has been fixed.  This derived from my not reading the
  260.    documentation-- take heed! EVERYBODY needs to read the
  261.    documentation!
  262.  
  263.    Bugs of varying levels of significance have been collected,
  264.    labeled, and sent to the Smithsonian.  Fixed routines:
  265.    FindFirstA series, FindPatch, MMButton, MMButton3, ObjScan.
  266.  
  267.    In PBClone 1.4, a PBCOBJ.ZIP file was included which
  268.    contained all of the object files for PBClone.  This has
  269.    been replaced with PBCLONE.LIB.  Use the utilities included
  270.    with LIBWIZ (separate) to extract all of the .OBJ files from
  271.    the library to allow you to create your own custom libraries.
  272.  
  273.    Complaints of bugs in BarMenu have prompted me to add
  274.    MENUDEMO.BAS and MENUDEMO.EXE.  BarMenu works flawlessly,
  275.    but evidently was insufficiently documented.  The addition
  276.    of this example code should help.  I've added VARCDEMO.BAS
  277.    and VARCDEMO.EXE as well to demonstrate the archive-viewing
  278.    routines.
  279.  
  280.    Assembly language source code has been converted from OPTASM
  281.    to MASM 6.0. While MASM is still not up to OPTASM in many
  282.    respects, it's close enough, especially given that SLR has
  283.    not updated OPTASM in the past few years and it doesn't even
  284.    support 80386 codes yet.  Oh well.  MASM may be yucky, but
  285.    it's still (somehow) the standard, and as of v6.0 it's at
  286.    least tolerable.
  287.  
  288.    New additions:
  289.       FileCRC, GetXMSm, GetXMSv
  290.  
  291.  
  292.  
  293. PBClone 1.4, 03/28/91:
  294.  
  295.    This library is now too large for BASIC to cope with as a
  296.    unit.  Look for LIBWIZxx.ZIP (separate), a library manager
  297.    which will allow you to create custom libraries containing
  298.    just the routines you need.
  299.  
  300.    The Processor and Processor2 routines can now differentiate
  301.    NEC V20 chips.
  302.  
  303.    New additions:
  304.       AltKey, BarMenu, BarMenuM, CalcDate, CDROM2, CheckDate,
  305.       CheckDsk, ClearArea, CtrlKey, CWindowManager, DateA2R,
  306.       DateR2A, DCal, DCalendar, DGQPrint, DGXQPrint,
  307.       DGXQPrint1, EnhKbd, EuropeDate, EWindowManagerC,
  308.       EXQPrintC, FileCopy, FindFirstFx, FindNextFx, FindPatch,
  309.       ForceMatch, FormatDate, GetAttrFx, GetCommAddr,
  310.       GetDateFx, GetDView, GetHGA, GetLine, GetMoveBack,
  311.       GetNameFx, GetRows2, GetSizeFx, GetTimeFx, GetTView,
  312.       GetTVScreen, GXQPrint, GXQPrint1, KbdType, KbdType2,
  313.       KVal, LScroll, LVal, MemSwap, ObjScan, PatchDone, PrtSc,
  314.       Rand, RScroll, SetCommAddr, SetPatch, TypePrint,
  315.       UpdTVScreen, WeekDay1
  316.  
  317.  
  318.  
  319. PBClone 1.3, 02/21/91:
  320.  
  321.    The GetLabel and GetLabel2 routines were fixed to overcome a
  322.    DOS 2.x bug. They should now work properly with DOS 2.0 on.
  323.  
  324.    A crude TSR file viewer, FV.EXE, has been added to make
  325.    syntax and usage questions less of a bother.  It would be
  326.    wise to try it out on something nonessential first-- it
  327.    seems to work fine with QuickBASIC, but it locks up my
  328.    favorite editor.  See PBCLONE.DOC for details.
  329.  
  330.    New additions:
  331.       CheckShare2, CloseA, CPrintScreen1, CPrintScreen2,
  332.       CursorInfo, EMSBuffer, EMSClose, EMSGet, EMSOpen, EMSPut,
  333.       EMSRest, EMSSave, FindFirstA, FindNextA, GetCRCA,
  334.       GetCRCAL, GetDateA, GetMouseLoc, GetNameA, GetSerial,
  335.       GetSizeAL, GetStoreA, GetTimeA, GQPrint, HandleInfo,
  336.       HCls, HInit, HLine, HMode, HPage, HPrint, HSetPixel,
  337.       HTestPixel, MaxD, MaxS, MinD, MinS, NumFormat, NumProc,
  338.       NumProc2, ParseFSpec, PrintFile, Processor, Processor2,
  339.       ReadBitF, RedirectIn, RedirectOut, SetBit, SetLabel,
  340.       SetMouseLoc, SInput, SInputSet, SInputSet1, SInputSet2,
  341.       WriteBitF
  342.  
  343.  
  344.  
  345. PBClone 1.2, 01/28/91:
  346.  
  347.    A bug in the Floppies and Floppies2 routines has been
  348.    fixed.  Thanks to Dennis Allen for bringing it to my
  349.    attention and suggesting a solution.
  350.  
  351.    A bug in the StrIns routine has been fixed.  Thanks to Birk
  352.    Binnard for bringing it to my attention.
  353.  
  354.    New additions:
  355.       DRecDel, DRecIns, DReColor, DReColorArea, DWindowManager,
  356.       DWindowMan2, DWindowMan3, DWindowMan4, DXQPrint,
  357.       EGARest7, EGARest8, EGARest9, EGASave7, EGASave8,
  358.       EGASave9, GetKbd2, GrafPrint, GrafRest, GrafSave, LClose,
  359.       LGet, Locase1, LOpen, LPut, StrSqu2, StrSquLen2,
  360.       StrUnsqu2, StrUnsquLen2, TInstr, UnSplit, Upcase1
  361.  
  362.  
  363.  
  364. PBClone 1.1, 12/28/90:
  365.  
  366.    The QLB version of the library is no longer included, to
  367.    help reduce the size of this burgeoning package.  You can
  368.    create it from the LIB like so:
  369.  
  370.       LINK PBCLONE.LIB/Q/SE:512,,NUL,BQLB45
  371.  
  372.    See the LIBRARY.TXT and QUESTION.TXT files if this doesn't
  373.    work for you.
  374.  
  375.    The manual has been split into two parts to allow easier use.
  376.  
  377.    Several of the memory and string routines are now faster.
  378.  
  379.    The mouse-handling part of CheckKey, CheckKey3, GetKey, and
  380.    GetKey3 has been enabled.
  381.  
  382.    New additions:
  383.       AscI, BIOSInkey, CalcAttr2, DelayV, DGetRec, DOSErrM,
  384.       DOSInt, DPutRec, DScrRest, DScrSave, ElapsedTime, Exist2,
  385.       ExtendFSpec, Extract, FGetLoc2, FSize2, GetCRT2,
  386.       GetDrive, GetEGA2, GetSub2, GetSwitch2, GetVGA2,
  387.       IntVector, IStr, IVal, MaxL, MinL, MMButton, MMButton3,
  388.       MMCheck, MMClick, MMClick3, MMCursorOff, MMCursorOn,
  389.       MMGetLoc, MMSetLoc, MMSetRange, MousePen, MouseRest,
  390.       MouseBuffer, MouseSave, NameCase2, ReColor, ReColorArea,
  391.       ReplaceString, Sec2Time, Split, SubExist2, Time2Sec,
  392.       WindowManager, WindowMan2, WindowMan3, WindowMan4
  393.  
  394.  
  395.  
  396. PBClone 1.0, 12/03/90:
  397.  
  398.    This is the initial release of the PBClone library,
  399.    featuring 222 routines.
  400.